package com.gs.synedocket.view;

import com.gs.synedocket.apiresult.ApiResultData;
import com.gs.synedocket.db.dto.MenuDto;
import com.gs.synedocket.db.dto.VersionDto;

import java.io.File;
import java.util.List;

public interface IMainView extends IView {
    void onGetListSuccess(ApiResultData<List<MenuDto>> apiResult);

    void onGetListFails(Exception msg);

    void onLogoutSuccess(ApiResultData<String> apiResult);

    void onLogoutFails(Exception msg);

    void onRevertSuccess(ApiResultData<String> apiResult, int newState);

    void onRevertFails(Exception msg);

    void onGetVersionSuccess(ApiResultData<VersionDto> apiResultData);

    void onGetVersionFails(Exception e);

    void onDownloadFileSuccess(File file);

    void onDownloadProgress(int progress);

    void onDownloadFails(Exception e);
}
